基于WinForm开发的Ribbon界面案例的扩展 | 您所在的位置:网站首页 › ribbon winform › 基于WinForm开发的Ribbon界面案例的扩展 |
增加 Ribbon 三联排小按钮 文本菜单的动态添加删除及提示 ribbon按钮的动态添加删除 checkbox按钮下拉按钮样式 public partial class Form1 : Form { public Form1() { InitializeComponent();
UIApplication uiapp = new UIApplication(this.aeRibbonControl1); uiapp.CreateTab("设计专区"); uiapp.CreateTab("结构"); uiapp.CreateTab("附加模块");
RibbonPanel panel = uiapp.CreateRibbonPanel("设计专区", "项目特征"); PushButton pb = new PushButton("暖通设计", Properties.Resources.apply, true, "");
pb.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("1234567890暖通设计" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButton pb2 = new PushButton("建造楼板及天花板", Properties.Resources.white, true, "1234"); pb2.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("1234567890建造楼板及天花板" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButton pb3 = new PushButton("参数设计", Properties.Resources.white, false, "1234"); pb3.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("1234567890参数设计" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButton pb4 = new PushButton("设计", Properties.Resources.white, true, "5678"); pb4.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("1234567890设计" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButton small_1 = new PushButton("轴线合一", Properties.Resources._2_7, false, "轴线合一"); small_1.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("轴线合一" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButton small_2 = new PushButton("轴线删除", Properties.Resources._2_8, false, "轴线删除"); small_2.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("轴线删除" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButton small_3 = new PushButton("轴线连接", Properties.Resources._2_9, false, null); small_3.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("轴线连接" + aeRibbonControl1.tabList[aeRibbonControl1.CurrentTab].name); });
PushButtonStack smallStack = new PushButtonStack("联排按钮",true);//必须满足三个小按钮 如果数量不对 建议使用下拉按钮
smallStack.AddItem(small_1); smallStack.AddItem(small_2); smallStack.AddItem(small_3);
PullDownStack ps = new PullDownStack("用户界面", Properties.Resources.green, true, "5678"); PullDownStack ps2 = new PullDownStack("本地\n数据", Properties.Resources.green, false, "5678");
PullDownButton pd = new PullDownButton("分离中心文件", Properties.Resources._20, false, null); pd.Click += new Ribbon.RibbonHandler(() => {
MessageBox.Show("分离中心文件");
}); PullDownButton pd2 = new PullDownButton("按工作集导出NWC文件", Properties.Resources.orange, false, null); pd2.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("按工作集导出NWC文件");
}); PullDownButton pd3 = new PullDownButton("按中心文件导出IFC文件", Properties.Resources.orange, false, null); pd3.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("按中心文件导出IFC文件");
}); PullDownButton pd4 = new PullDownButton("模型显隐", Properties.Resources.orange, false, null); pd4.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("模型显隐");
});
PullDownButton pd5 = new PullDownButton("模型显隐", Properties.Resources.blue, false, null); pd5.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("模型显隐"); pd5.IsEnabled = false; }); PullDownButton pd6 = new PullDownButton("局部三维", Properties.Resources.blue, false, null); pd6.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("局部三维");
}); PullDownButton pd7 = new PullDownButton("构件定位", Properties.Resources.blue, false, null); pd7.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("构件定位");
}); PullDownButton pd8 = new PullDownButton("轴网创建", Properties.Resources.blue, false, null); pd8.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("轴网创建");
});
PullCheckDownStack pcds = new PullCheckDownStack("选项卡",Properties.Resources.white,false,null);
CheckButton cb1 = new CheckButton("属性选项卡",false,false,false,null,null); CheckButton cb2 = new CheckButton("项目浏览器", false, true, false, null, null); CheckButton cb3 = new CheckButton("系统浏览器", false, false, false, null, null); CheckButton cb4 = new CheckButton("状态栏选项卡", false, true, false, null, null); CheckButton cb5 = new CheckButton("导航栏", false, false, false, null, null); CheckButton cb6 = new CheckButton("ViewCode", true, false, false, null, null); CheckButton cb7 = new CheckButton("隐藏全部", false, false, true, Properties.Resources.hide, null); CheckButton cb8 = new CheckButton("显示全部", false, false, true, Properties.Resources.show, null); cb1.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show(cb1.Text); }); cb8.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show(cb8.Text); }); pcds.AddItem(cb1); pcds.AddItem(cb2); pcds.AddItem(cb3); pcds.AddItem(cb4); pcds.AddItem(cb5); pcds.AddItem(cb6); pcds.AddItem(cb7); pcds.AddItem(cb8);
ps.AddItem(pd); ps.AddItem(pd2); ps.AddItem(pd3); ps.AddItem(pd4);
ps2.AddItem(pd5); ps2.AddItem(pd6); ps2.AddItem(pd7); ps2.AddItem(pd8);
panel.AddItem(pb); panel.AddItem(pb2); panel.AddItem(pb4); panel.AddItem(pb3); panel.AddItem(smallStack);
RibbonPanel panel2 = uiapp.CreateRibbonPanel("设计专区", "参数关联"); panel2.AddItem(pb); panel2.AddItem(pb2); panel2.AddItem(pb3);
RibbonPanel panel3 = uiapp.CreateRibbonPanel("设计专区", "选择测试"); panel3.AddItem(pb); panel3.AddItem(pb2); panel3.AddItem(ps); panel3.AddItem(pb3); panel3.AddItem(ps2);
RibbonPanel panel6 = uiapp.CreateRibbonPanel("设计专区", "项目测试"); panel6.AddItem(pb2); panel6.AddItem(pb); panel6.AddItem(pb3); panel6.AddItem(ps); panel6.AddItem(pb4); panel6.AddItem(pd5); panel6.AddItem(pb3); panel6.AddItem(ps2); panel6.AddItem(pcds);
RibbonPanel panel4 = uiapp.CreateRibbonPanel("附加模块", "项目描述"); RibbonPanel panel5 = uiapp.CreateRibbonPanel("附加模块", "描述参数");
panel4.AddItem(pb); panel4.AddItem(pb2); panel4.AddItem(pb3); panel5.AddItem(pb); panel5.AddItem(pb2); panel5.AddItem(pb3);
RibbonPanel panel8= uiapp.CreateRibbonPanel("结构", "项目描述"); RibbonPanel panel9 = uiapp.CreateRibbonPanel("结构", "描述参数");
panel9.AddItem(pb3); panel9.AddItem(pb2); panel9.AddItem(pb); panel8.AddItem(pb); panel8.AddItem(pb2); panel8.AddItem(pb3);
//创建应用菜单 ApplicationMenu menu = uiapp.CreateApplicationMenu("你是我的风景");
ApplicationMenuItem item_1 = new ApplicationMenuItem("新建规则", Properties.Resources.white, false, "思念是一种病,得治!"); ApplicationMenuItem item_2 = new ApplicationMenuItem("打开规则", Properties.Resources.white, false, "如果云知道,许茹芸"); ApplicationMenuItem item_3 = new ApplicationMenuItem("导出规则", Properties.Resources.white, false, "思念是一种病,得治!"); ApplicationMenuItem item_4 = new ApplicationMenuItem("导入规则", Properties.Resources.white, true, "中华上下五千年,厉害");
item_1.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("新建规则"); });
MenuButton btn0 = new MenuButton("如果云知道", Properties.Resources.blue, false, null); MenuButton btn1 = new MenuButton("台北在下雨", Properties.Resources.blue, false, null); MenuButton btn2 = new MenuButton("故乡彩云映落日", Properties.Resources.blue, false, null); MenuButton btn3 = new MenuButton("他乡秋风寄相思", Properties.Resources.blue, false, null); MenuButton btn00 = new MenuButton("兵者,国之大事", Properties.Resources.blue, false, null); MenuButton btn11 = new MenuButton("死生之地,存亡之道", Properties.Resources.blue, false, null); MenuButton btn22 = new MenuButton("孔子曰:人之初,性本善", Properties.Resources.blue, false, null); MenuButton btn33 = new MenuButton("孟子曰:孔子说得对", Properties.Resources.blue, false, null); MenuButton btn44 = new MenuButton("老子曰:道可道,非常道", Properties.Resources.blue, false, null); btn0.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show(btn0.Text);
}); btn3.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show(btn3.Text);
});
item_4.AddItem(btn0); item_4.AddItem(btn1); item_4.AddItem(btn2); item_4.AddItem(btn3); item_4.AddItem(btn00); item_4.AddItem(btn11); item_4.AddItem(btn22); item_4.AddItem(btn33); item_4.AddItem(btn44);
item_2.AddItem(btn0); item_2.AddItem(btn1); item_2.AddItem(btn2); item_2.AddItem(btn3);
ApplicationMenuItem item_5 = new ApplicationMenuItem("没有规则", Properties.Resources.white, false, "思念是一种病,得治!"); ApplicationMenuItem item_6 = new ApplicationMenuItem("已有规则", Properties.Resources.white, false, "思念是一种病,得治!"); ApplicationMenuItem item_7 = new ApplicationMenuItem("放弃规则", Properties.Resources.white, false, "思念是一种病,得治!"); ApplicationMenuItem item_8 = new ApplicationMenuItem("重启规则", Properties.Resources.white, false, "思念是一种病,得治!");
item_5.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("没有规则"); });
menu.AddMenuItems(item_1); menu.AddMenuItems(item_2); menu.AddMenuItems(item_3); menu.AddMenuItems(item_4); menu.AddMenuItems(item_5); menu.AddMenuItems(item_6); menu.AddMenuItems(item_7); menu.AddMenuItems(item_8);
MenuText text_1 = new MenuText("一路过很多城", "思念是一种病,得治!1"); MenuText text_2 = new MenuText("飘忽不定这也是一种麻痹", "思念是一种病,得治!2"); MenuText text_3 = new MenuText("全部是你微笑的表情", "思念是一种病,得治!3"); MenuText text_4 = new MenuText("一整片的森林", "思念是一种病,得治!4"); MenuText text_5 = new MenuText("你在树荫里", "思念是一种病,得治!5"); MenuText text_6 = new MenuText("复杂的生命因为有你", "思念是一种病,得治!6"); MenuText text_7 = new MenuText("你是我的风景", "思念是一种病,得治!7"); MenuText text_8 = new MenuText("云高风清不走下去", "思念是一种病,得治!8"); MenuText text_9 = new MenuText("爱让悬崖变平地", "思念是一种病,得治!9"); MenuText text_10 = new MenuText("看到了你莽莽撞撞靠近", "思念是一种病,得治!10"); MenuText text_11 = new MenuText("细节都牵引我放下行李", "思念是一种病,得治!11"); text_11.Click += new MenuText.RibbonHandler(() => { MessageBox.Show(text_11.Text); }); text_4.Click += new MenuText.RibbonHandler(() => { MessageBox.Show(text_4.Text); }); menu.AddTextItems(text_1); menu.AddTextItems(text_2); menu.AddTextItems(text_3); menu.AddTextItems(text_4); menu.AddTextItems(text_5); menu.AddTextItems(text_6); menu.AddTextItems(text_7); menu.AddTextItems(text_8); menu.AddTextItems(text_9); menu.AddTextItems(text_10); menu.AddTextItems(text_11);
MenuText btnOne = new MenuText("退出", null); btnOne.Click += new MenuText.RibbonHandler(() => { MessageBox.Show("退出此程序!");
}); MenuText btnTwo = new MenuText("设置", null); btnTwo.Click += new MenuText.RibbonHandler(() => { MessageBox.Show("选项设置"); }); menu.bottomBigBtn = btnOne; menu.bottomSmallBtn = btnTwo; this.aeRibbonControl1.menu = menu; aeRibbonControl1.UpdateAndRefresh(); } private void Form1_Load(object sender, EventArgs e) {
} //禁用指定按钮 private void button1_Click(object sender, EventArgs e) { aeRibbonControl1.tabList[0].listPanels[0].ribbons[0].IsEnabled = false;
foreach (Ribbon rb in aeRibbonControl1.ribbons.list) { if (rb.GetType() == typeof(PullDownStack)) { foreach (PullDownButton a in (rb as PullDownStack).pushBtns) { if (a.Text == "分离中心文件") { a.IsEnabled = false; break; } } } } } //激活指定按钮 private void button2_Click(object sender, EventArgs e) { aeRibbonControl1.tabList[0].listPanels[0].ribbons[0].IsEnabled = true; foreach (Ribbon rb in aeRibbonControl1.ribbons.list) { if (rb.GetType() == typeof(PullDownStack)) { foreach (var a in (rb as PullDownStack).pushBtns) { if (a.Text == "分离中心文件") { a.IsEnabled = true; break; } } } } }
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) {
} //动态添加按钮 private void button3_Click(object sender, EventArgs e) { PushButton pbs = new PushButton("动态设计", Properties.Resources.apply, true, ""); pbs.Click += new Ribbon.RibbonHandler(() => { MessageBox.Show("动态设计"); }); this.aeRibbonControl1.tabList[0].listPanels[0].AddItem(pbs);
this.aeRibbonControl1.UpdateRibbonAddOrRemove(); } //动态删除按钮 private void button4_Click(object sender, EventArgs e) {
this.aeRibbonControl1.tabList[0].listPanels[0].Remove("动态设计"); this.aeRibbonControl1.UpdateRibbonAddOrRemove(); } //动态文本菜单添加 private void button5_Click(object sender, EventArgs e) { MenuText text = new MenuText("动态测试", "动态测试提示文本"); this.aeRibbonControl1.menu.AddTextItems(text); //移除文本菜单项 //this.aeRibbonControl1.menu.DeleteTextItems(text); //this.aeRibbonControl1.menu.DeleteTextItems("动态测试"); }
} 源码案例 连接 https://pan.baidu.com/s/1b_bmXY7x5zi16zaO9nmAsg |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |